Varios sistemas de ficheros exportados por el núcleo son usados ??para comunicarse hacia y desde el propio núcleo. Estos sistemas de archivos son virtuales y no utilizan espacio en disco para ellos. El contenido de los sistemas de archivos reside en la memoria.
Comienza creando los directorios sobre los que se montarán los sistemas de archivos:
mkdir -pv $LFS/{dev,proc,sys,run}
Cuando el núcleo arranca el sistema, se requiere la presencia de un par de nodos de dispositivos, en particular, console y null. Los nodos de dispositivos se deben crear en el disco duro para que estén disponibles antes de que udevd se haya iniciado, y adicionalmente cuando Linux es iniciado con init=/bin/bash . Crea los dispositivos ejecutando los siguientes comandos:
mknod -m 600 $LFS/dev/console c 5 1 mknod -m 666 $LFS/dev/null c 1 3
El método recomendado para poblar el directorio /dev con dispositivos es montar un sistema de ficheros virtual (como tmpfs ) en /dev, y permitir que los dispositivos se creen dinámicamente en ese sistema de ficheros virtual a medida que se detectan o se accede. La creación de dispositivos se realiza generalmente durante el proceso de arranque por udev. Dado que este nuevo sistema no tiene aún udev y aún no ha sido arrancado, es necesario montar y poblar /dev manualmente. Esto se logra mediante un montaje enlazado del directorio /dev del sistema anfitrión. Un montaje enlazado es un tipo especial de montaje que le permite crear un espejo de un directorio o punto de montaje en otra ubicación. Utilice el siguiente comando para lograr esto:
mount -v --bind /dev $LFS/dev
Ahora, montar los sistemas de ficheros virtuales del núcleo restantes:
mount -vt devpts devpts $LFS/dev/pts -o gid=5,mode=620 mount -vt proc proc $LFS/proc mount -vt sysfs sysfs $LFS/sys mount -vt tmpfs tmpfs $LFS/run
El significado de las opciones de montaje para devpts:
gid=5
Esto asegura que todos los nodos de dispositivos devpts creados tienen como grupo propietario el GID 5. Este es el GID que utilizaremos más adelante para el grupo tty. Utilizamos el GID de grupo en lugar de un nombre, porque el sistema anfitrión puede utilizar un GID diferente para su grupo tty.
mode=0620
Esto asegura que todos los nodos de dispositivos devpts creados tiene modo 0620 (el usuario puede leer y escribir, el grupo puede escribir). Junto con la opción anterior, esto asegura que devpts creará nodos de dispositivos que cumplen con los requisitos de grantpt (), lo que significa el binario pt_chown de Glibc (que no se instala por defecto) no es necesario.
En algunos sistemas host, /dev/shm es un enlace simbólico a /run/shm . Así, /run tmpfs se montó encima en este caso, luego sólo un directorio tiene que ser creado.
if [ -h $LFS/dev/shm ]; then mkdir -pv $LFS/$(readlink $LFS/dev/shm) fi